The present invention relates to low cost video game systems. More particularly, the invention relates to a video game system that can model a world in three dimensions and project the model onto a two dimensional viewing plane selected based on a changeable viewpoint.
People""s imaginations are fueled by visual images. What we actually see at sunset, what we dream at night, the pictures we paint in our mind when we read a novelxe2x80x94all of these memorable scenes are composed of visual images. Throughout history, people have tried to record these images with pencils or paints or video tape. But only with the advent of the computer can we begin to create images with the same vividness, detail and realism that they display in the real world or in the imagination.
Computer-based home video game machines such as the Nintendo Entertainment System and the Super Nintendo Entertainment System have been highly successful because they can interactively produce exciting video graphics. However, without additional add-on hardware, these prior video graphics systems generally operated in two dimensions, creating graphics displays from flat (planar) image representations in a manner somewhat analogous to tacking flat paper cutouts onto a bulletin board. Although very exciting game play can be created using two dimensional graphics techniques, a 2D system cannot provide the realism offered by a three-dimensional graphics system.
3D graphics are fundamentally different from 2D graphics. In 3D graphics techniques, a xe2x80x9cworldxe2x80x9d is represented in three dimensional space. The system can allow the user to select a viewpoint within the world. The system creates an image by xe2x80x9cprojectingxe2x80x9d the world based on the selected viewpoint. The result is a true three-dimensional image having depth and realism.
For many years, specialists have used super computers and high end workstations to create incredible realistic 3D imagesxe2x80x94for example, ultra-detailed models of cars, planes and molecules; virtual reality as seen from the cockpit of a jet fighter or the front seat of an Olympic bobsled; and dinosaurs of xe2x80x9cJurassic Park.xe2x80x9d However, in the past, computer systems required to produce such images interactively cost tens of thousands of dollarsxe2x80x94well beyond the reach of the average consumer.
The low cost high performance 3D graphics system disclosed herein is intended to for the first time give millions of game players, not just the specialists, the chance to interact right inside these magnificent virtual 3D worlds with a richly featured high performance low cost system. What players get is truly amazingxe2x80x94many times the power of any home computer system, far more realistic 3-dimensional animation, stunning graphicsxe2x80x94all delivered at a sufficiently low cost to be within the reach of the average consumer.
The following are a few examples of the many advantageous features provided by a system in accordance with the present invention:
Realistic interactive 3D graphics in a low price system
Optimum feature set/architecture for a low cost system for use with a color television set to provide video game play and other graphics applications in a low cost system and/or to produce particular screen effects
Coprocessor that provides high performance 3D graphics and digital sound processing
Signal processor sharing between graphics digital processing and audio signal processing to achieve high quality stereo sound and 3-D graphics in a low cost color television based system
Unified RAM approach increases flexibility
All major system components can communicate through the shared RAM
Techniques/structures for compensating for narrow main memory bus width
Executable code from a storage device (e.g., a portable memory cartridge) can be loaded into the common RAM and accessed by the main processor through coprocessor memory access/arbitration circuitry
Graphics coprocessor loadable microcode store receives microcode from a portable storage medium to provide additional flexibility and simplify compatibility issues
Microcode is loaded via execution of xe2x80x9cboot ROMxe2x80x9d instructions
Optimal commands and associated formats are used to invoke graphics and audio functions within the coprocessor and provide an interface between the graphics coprocessor and the rest of the system
Coprocessor register set including particular hardware register definitions, formats and associated functions
Microcode graphics and audio structure/processes provide efficient high performance operation
Vector unit provides optimal performance for graphics and audio digital processing in a low cost package
Pipelined rasterizing engine provides a one-pixel-per-cycle and two-pixel-per-cycle modes to minimize hardware cost while providing a rich feature set
Low coprocessor pin out